c operator overloading example